跳到主要内容

Julia 可变数量实参函数

阐述

对可变数量实参进行类型标注,甚至参数化:

julia> bar(a,b,x::Vararg{Any,2}) = (a,b,x)
bar (generic function with 1 method)

function getindex(A::AbstractArray{T,N}, indices::Vararg{Number,N}) where {T,N}

当只需要限定类型时,可以采用 T... 的简化格式:

f(x::Int...) = x

也可以省略类型接收任何参数:

bar(a, b, x...) = (a, b, x)

相反地,在给函数传参时,也可以在实参后面添加 ... 来把它分解为多个实参。

实例

bar(1,2) #(1, 2, ())
bar(1,2,3,4,5,6) #(1, 2, (3, 4, 5, 6))
bar([1,2,3,4]...) #(1, 2, (3, 4))

性质

相关内容

Julia 函数

参考文献